package uy.org.softtech.cssuite.excepciones;

import uy.org.softtech.cssuite.core.Excepcion;

/**
 * Excepcion a ser lanzada cuando un registro en la base de datos no puede ser encontrado.
 * 
 * @author fabian.lobo
 */
public class EntidadNoEncontradaException extends Excepcion {

	private static final long serialVersionUID = 1399781326846917985L;

	/**
	 *  Constructor que inicializa la excepcion con un mensaje por defecto.
	 *  
	 *  @author fabian.lobo
	 */
	public EntidadNoEncontradaException() {
		super(Codigo.ENTIDAD_NO_ENCONTRADA, "No se encontraron registros.");
	}

	/**
	 * Constructor que inicializa la excepcion con un mensaje dado.
	 *
	 * @param message - Mensaje a ser mostrado.
	 * @author fabian.lobo
	 */
	public EntidadNoEncontradaException(String message) {
		super(Codigo.ENTIDAD_NO_ENCONTRADA, message);
	}
	
	/**
	 * Constructor que inicializa la excepcion con un mensaje que contiene el identificador 
	 * del registro que se quiso usar para hacer la búsqueda.
	 *
	 * @param id - Identificador que fue utilizado en la búsqueda.
	 * @author fabian.lobo
	 */
	public EntidadNoEncontradaException(Long id) {
		super(Codigo.ENTIDAD_NO_ENCONTRADA, "No se encontraron registros con el ID " + Long.toString(id) + ".");
	}
}
